package com.ch.playandroid.bean

import com.google.gson.annotations.SerializedName

/**
 * Author: chenhu
 * Time: 2021/9/16 14:34
 * Description do somethings
 *{
"data": {
"curPage": 2,
"datas": [
{
"apkLink": "",
"audit": 1,
"author": "郭霖",
"canEdit": false,
"chapterId": 409,
"chapterName": "郭霖",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20201,
"link": "https://mp.weixin.qq.com/s/RR83k6AyB55-bQvCtdwDCA",
"niceDate": "2021-10-18 00:00",
"niceShareDate": "2天前",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634486400000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634568272000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/409/1"
}
],
"title": "Android还可以外接摄像头？一起来学习一下吧",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 423,
"chapterName": "Architecture",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20188,
"link": "https://juejin.cn/post/7019839767441309733",
"niceDate": "2021-10-17 20:47",
"niceShareDate": "2021-10-17 20:22",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634474831000,
"realSuperChapterId": 422,
"selfVisible": 0,
"shareDate": 1634473327000,
"shareUser": "鸿洋",
"superChapterId": 423,
"superChapterName": "Jetpack",
"tags": [],
"title": "正确实践Jetpack SplashScreen API &mdash;&mdash; 在所有Android系统上使用总结，内含原理分析",
"type": 0,
"userId": 2,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 308,
"chapterName": "多线程",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20189,
"link": "https://juejin.cn/post/7019132459694424077",
"niceDate": "2021-10-17 20:46",
"niceShareDate": "2021-10-17 20:33",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634474818000,
"realSuperChapterId": 244,
"selfVisible": 0,
"shareDate": 1634473996000,
"shareUser": "鸿洋",
"superChapterId": 245,
"superChapterName": "Java深入",
"tags": [],
"title": "Android 进程与线程(了解&amp;gt;使用&amp;gt;常见面试题)",
"type": 0,
"userId": 2,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 78,
"chapterName": "性能优化",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20190,
"link": "https://juejin.cn/post/7018883931067908132",
"niceDate": "2021-10-17 20:46",
"niceShareDate": "2021-10-17 20:35",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634474785000,
"realSuperChapterId": 53,
"selfVisible": 0,
"shareDate": 1634474108000,
"shareUser": "鸿洋",
"superChapterId": 76,
"superChapterName": "热门专题",
"tags": [],
"title": "这次，我想把内存泄漏讲明白",
"type": 0,
"userId": 2,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "鸿洋",
"canEdit": false,
"chapterId": 408,
"chapterName": "鸿洋",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20192,
"link": "https://mp.weixin.qq.com/s/R4EBZPuHx8o7s1UMlesW5Q",
"niceDate": "2021-10-17 00:00",
"niceShareDate": "2021-10-17 22:46",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634400000000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634482012000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/408/1"
}
],
"title": "干掉OOM？快手开源大招 KOOM 剖析",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 502,
"chapterName": "自助",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20173,
"link": "https://www.jianshu.com/p/33e7bdd3349c",
"niceDate": "2021-10-15 09:13",
"niceShareDate": "2021-10-15 09:13",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634260395000,
"realSuperChapterId": 493,
"selfVisible": 0,
"shareDate": 1634260395000,
"shareUser": "hp1451193026",
"superChapterId": 494,
"superChapterName": "广场Tab",
"tags": [],
"title": "项目架构-插件化-Hook实现换肤",
"type": 0,
"userId": 2058,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "鸿洋",
"canEdit": false,
"chapterId": 408,
"chapterName": "鸿洋",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20191,
"link": "https://mp.weixin.qq.com/s/E3am9As0ReliS9XLqWoB5A",
"niceDate": "2021-10-15 00:00",
"niceShareDate": "2021-10-17 22:46",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634227200000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634481998000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/408/1"
}
],
"title": "深入原理：Android ContentProvider 对启动存在的暗坑",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "谷歌开发者",
"canEdit": false,
"chapterId": 415,
"chapterName": "谷歌开发者",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20193,
"link": "https://mp.weixin.qq.com/s/iww4JFpPW_rMmOfy6dJbBQ",
"niceDate": "2021-10-15 00:00",
"niceShareDate": "2021-10-17 22:47",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634227200000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634482033000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/415/1"
}
],
"title": "Flutter 2.5 | 一文解读重点更新",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "郭霖",
"canEdit": false,
"chapterId": 409,
"chapterName": "郭霖",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20194,
"link": "https://mp.weixin.qq.com/s/CF85EW3KxonHoO91iEAh1g",
"niceDate": "2021-10-15 00:00",
"niceShareDate": "2021-10-17 22:47",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634227200000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634482046000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/409/1"
}
],
"title": "带倒计时RecyclerView的设计心路历程",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 502,
"chapterName": "自助",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20152,
"link": "https://juejin.cn/post/7018189031519289381",
"niceDate": "2021-10-14 14:11",
"niceShareDate": "2021-10-14 14:11",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634191895000,
"realSuperChapterId": 493,
"selfVisible": 0,
"shareDate": 1634191895000,
"shareUser": "ZSpirytus",
"superChapterId": 494,
"superChapterName": "广场Tab",
"tags": [],
"title": "Gson#fromJson的性能分析",
"type": 0,
"userId": 107688,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 502,
"chapterName": "自助",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20151,
"link": "https://www.jianshu.com/u/a8c4ebe98784",
"niceDate": "2021-10-14 09:12",
"niceShareDate": "2021-10-14 09:12",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634173937000,
"realSuperChapterId": 493,
"selfVisible": 0,
"shareDate": 1634173937000,
"shareUser": "hp1451193026",
"superChapterId": 494,
"superChapterName": "广场Tab",
"tags": [],
"title": "项目架构-插件化-资源加载",
"type": 0,
"userId": 2058,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 98,
"chapterName": "WebView",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20139,
"link": "https://juejin.cn/post/7018037732412768269",
"niceDate": "2021-10-14 00:13",
"niceShareDate": "2021-10-13 08:41",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634141625000,
"realSuperChapterId": 34,
"selfVisible": 0,
"shareDate": 1634085691000,
"shareUser": "goweii",
"superChapterId": 98,
"superChapterName": "网络访问",
"tags": [],
"title": "【奇淫技巧】解锁X5内核WebView同层渲染能力",
"type": 0,
"userId": 20382,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 98,
"chapterName": "WebView",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20140,
"link": "https://juejin.cn/post/7017840637450043422",
"niceDate": "2021-10-14 00:13",
"niceShareDate": "2021-10-13 09:00",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634141617000,
"realSuperChapterId": 34,
"selfVisible": 0,
"shareDate": 1634086858000,
"shareUser": "LewChich",
"superChapterId": 98,
"superChapterName": "网络访问",
"tags": [],
"title": "避坑！！webview如何加载pdf ？",
"type": 0,
"userId": 671,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 26,
"chapterName": "基础UI控件",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20147,
"link": "https://juejin.cn/post/7018431629320257566",
"niceDate": "2021-10-14 00:13",
"niceShareDate": "2021-10-13 23:45",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634141600000,
"realSuperChapterId": 25,
"selfVisible": 0,
"shareDate": 1634139928000,
"shareUser": "鸿洋",
"superChapterId": 26,
"superChapterName": "常用控件",
"tags": [],
"title": "View的几个小工具",
"type": 0,
"userId": 2,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 78,
"chapterName": "性能优化",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20149,
"link": "https://juejin.cn/post/7018563035220410375",
"niceDate": "2021-10-14 00:13",
"niceShareDate": "2021-10-13 23:48",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634141592000,
"realSuperChapterId": 53,
"selfVisible": 0,
"shareDate": 1634140123000,
"shareUser": "鸿洋",
"superChapterId": 76,
"superChapterName": "热门专题",
"tags": [],
"title": "Android 点击响应时间",
"type": 0,
"userId": 2,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "鸿洋",
"canEdit": false,
"chapterId": 408,
"chapterName": "鸿洋",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20160,
"link": "https://mp.weixin.qq.com/s/6u1JLi6UcYq3Z1Xgyn-gWQ",
"niceDate": "2021-10-14 00:00",
"niceShareDate": "2021-10-15 00:26",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634140800000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634228806000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/408/1"
}
],
"title": "两种方式封装Retrofit+协程，实现优雅快速的网络请求",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "Android群英传",
"canEdit": false,
"chapterId": 413,
"chapterName": "Android群英传",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20161,
"link": "https://mp.weixin.qq.com/s/zJVZZxLzELA2qkJznRjjwQ",
"niceDate": "2021-10-14 00:00",
"niceShareDate": "2021-10-15 00:27",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634140800000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634228825000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/413/1"
}
],
"title": "【译】LiveData-Flow在MVVM中的更佳实践",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "郭霖",
"canEdit": false,
"chapterId": 409,
"chapterName": "郭霖",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20162,
"link": "https://mp.weixin.qq.com/s/f5KZJN_4G4LFBlEBQ_se3g",
"niceDate": "2021-10-14 00:00",
"niceShareDate": "2021-10-15 00:27",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634140800000,
"realSuperChapterId": 407,
"selfVisible": 0,
"shareDate": 1634228845000,
"shareUser": "",
"superChapterId": 408,
"superChapterName": "公众号",
"tags": [
{
"name": "公众号",
"url": "/wxarticle/list/409/1"
}
],
"title": "图解Compose Modifier实现原理 ，竟然如此简单！",
"type": 0,
"userId": -1,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 502,
"chapterName": "自助",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20141,
"link": "https://www.jianshu.com/p/586f3925eb82",
"niceDate": "2021-10-13 09:16",
"niceShareDate": "2021-10-13 09:16",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634087768000,
"realSuperChapterId": 493,
"selfVisible": 0,
"shareDate": 1634087768000,
"shareUser": "hp1451193026",
"superChapterId": 494,
"superChapterName": "广场Tab",
"tags": [],
"title": "项目架构-插件化-原理分析",
"type": 0,
"userId": 2058,
"visible": 1,
"zan": 0
},
{
"apkLink": "",
"audit": 1,
"author": "",
"canEdit": false,
"chapterId": 502,
"chapterName": "自助",
"collect": false,
"courseId": 13,
"desc": "",
"descMd": "",
"envelopePic": "",
"fresh": false,
"host": "",
"id": 20128,
"link": "https://juejin.cn/post/7017839020486950942",
"niceDate": "2021-10-13 01:12",
"niceShareDate": "2021-10-12 11:04",
"origin": "",
"prefix": "",
"projectLink": "",
"publishTime": 1634058740000,
"realSuperChapterId": 493,
"selfVisible": 0,
"shareDate": 1634007887000,
"shareUser": "鸿洋",
"superChapterId": 494,
"superChapterName": "广场Tab",
"tags": [],
"title": "Looper 需要手动 quit，那主线程 Looper 呢？",
"type": 0,
"userId": 2,
"visible": 1,
"zan": 0
}
],
"offset": 20,
"over": false,
"pageCount": 564,
"size": 20,
"total": 11272
},
"errorCode": 0,
"errorMsg": ""
}
 */
data class ArticleBean(
    //TODO GsonFormat 格式定义的名字，如果修改要加上这个，不然会报错(如data变成articleData)
    @SerializedName("data")
    val articleData: ArticleData,
    val errorCode: Int,
    val errorMsg: String
)

data class ArticleData(
    val curPage: Int,
    @SerializedName("datas")
    val dataList: List<DataBean>,
    val offset: Int,
    val over: Boolean,
    val pageCount: Int,
    val size: Int,
    val total: Int
)

data class DataBean(
    val apkLink: String,
    val audit: Int,
    val author: String,
    val canEdit: Boolean,
    val chapterId: Int,
    val chapterName: String,
    val collect: Boolean,
    val courseId: Int,
    val desc: String,
    val descMd: String,
    val envelopePic: String,
    val fresh: Boolean,
    val host: String,
    val id: Int,
    val link: String,
    val niceDate: String,
    val niceShareDate: String,
    val origin: String,
    val prefix: String,
    val projectLink: String,
    val publishTime: Long,
    val realSuperChapterId: Int,
    val selfVisible: Int,
    val shareDate: Long,
    val shareUser: String,
    val superChapterId: Int,
    val superChapterName: String,
    val tags: List<TagBean>,
    val title: String,
    val type: Int,
    val userId: Int,
    val visible: Int,
    val zan: Int
)

data class TagBean(
    val name: String,
    val url: String
)